/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.tesis2.pucp.Seguridad.Controlador;

import com.tesis2.pucp.Modelo.TesisUsuario;
import com.tesis2.pucp.Seguridad.DAO.UsuarioDAO;
import com.tesis2.pucp.Seguridad.Vista.LoginGUI;
import delysoft.MainController;
import delysoft.MainMenuGUI;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

/**
 *
 * @author pachon
 */
public class LoginControlador {
    private TesisUsuario usuario;
    private LoginGUI view;
    private UsuarioDAO dao;
    public final static int ESTADO_INHABILITADO = 3;
    public final static int ESTADO_CONECTADO = 4;
    
    public LoginControlador(UsuarioDAO dao, LoginGUI view){
        this.dao = dao;
        this.view = view;
        view.addEntrarListener(new entrarListener());
        view.addRecPassListener(new recuperarPassListener());
        
    }
    
    class entrarListener implements ActionListener{

        @Override
        public void actionPerformed(ActionEvent e) {
            
            if(view.getUsuario().compareTo("admin")==0){
                usuario = new TesisUsuario();
                usuario.setNombre("Admin");
                usuario.setApellidomaterno("");
                usuario.setApellidopaterno("");
                
                MainMenuGUI delySoft = new MainMenuGUI();
                MainController controller = new MainController(delySoft, usuario);
                view.dispose();
            }else{
            
            usuario = dao.validarUsuario(view.getUsuario());
            if(usuario.getIdusuario()!=0){
                if(usuario.getEstadosesion()==ESTADO_INHABILITADO){
                    view.mostrarAviso("Usuario Inhabilitado");
                }
                if(usuario.getPasword().equals(view.getPass())){
                    
                    //Codigo para llamar a nueva pantalla
                    //view.mostrarAviso("Usuario Habilitado ;)");
                    MainMenuGUI delySoft = new MainMenuGUI();
                    MainController controller = new MainController(delySoft, usuario);
                    view.dispose();
                    
                }else{
                    view.mostrarAviso("Contraseña Incorrecta");
                    view.LimpiarPass();
                }
            }else{
                view.mostrarAviso("Usuario no existe");
                view.LimpiarDatos();
            }
        }
        }
        
    }
    
    class recuperarPassListener implements ActionListener{

        @Override
        public void actionPerformed(ActionEvent e) {
            view.dispose();
        }
        
    }
        
    
}
